﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Subtle.Data.Persistence.Interfaces;
using Subtle.Domain.Models;

using Ninject.Modules;
using Subtle.Data.Persistence;
using Subtle.Domain.Services.Interfaces;
using Subtle.Domain.Services;

namespace Subtle.Modules
{
	/// <summary>
	/// Service Model
	/// </summary>
	public class ServiceModule : NinjectModule
	{
		/// <summary>
		/// Load
		/// </summary>
		public override void Load()
		{
			Bind<IRepository>().To<Repository>().InRequestScope();

			Bind<IEmailService>().To<EmailService>();
			Bind<IUserService>().To<UserService>();
			Bind<IPostService>().To<PostService>();
			Bind<IMediaService>().To<MediaService>();
			Bind<IMetaWeblog>().To<MetaWeblog>();
			Bind<IBlogService>().To<BlogService>();
		}
	}
}